Vehicular topple risk notification

ABSTRACT

Systems, methods, and other embodiments described herein relate to generating a notification about a risk of a target vehicle toppling over due to wind. In one embodiment, a method includes determining a wind force of the wind at a location of the target vehicle and determining one or more characteristics of the target vehicle. The method includes determining whether there is a risk of the target vehicle toppling over based on the wind force of the wind and the one or more characteristics of the target vehicle. The method includes generating a notification about the risk.

TECHNICAL FIELD

The subject matter described herein relates, in general, to systems andmethods for generating a notification about a risk of a target vehicletoppling over due to wind.

BACKGROUND

A vehicle may include one or more sensors that detect and relayinformation about the environment in which the vehicle is travelling.However, the vehicle may be impacted by an environment beyond the reachof the vehicle sensors. The vehicle may benefit from includinginformation from an environment beyond the reach of its vehicle sensorsin its decision-making process.

SUMMARY

In one embodiment, a system for generating a notification about a riskof a target vehicle toppling over due to wind is disclosed. The systemincludes one or more processors, and a memory in communication with theone or more processors. The memory stores an environment characteristicdetermination module including instructions that when executed by theone or more processors cause the one or more processors to determine awind force of the wind at a location of the target vehicle. The memorystores a vehicle characteristic determination module includinginstructions that when executed by the one or more processors cause theone or more processors to determine one or more characteristics of thetarget vehicle. The memory stores a risk determination module includinginstructions that when executed by the one or more processors cause theone or more processors to determine whether there is a risk of thetarget vehicle toppling over based on the wind force of the wind and theone or more characteristics of the target vehicle. The memory stores anotification module including instructions that when executed by the oneor more processors cause the one or more processors to generate anotification about the risk.

In another embodiment, a method for generating a notification about arisk of a target vehicle toppling over due to wind is disclosed. Themethod includes determining a wind force of the wind at a location ofthe target vehicle and determining one or more characteristics of thetarget vehicle. The method includes determining whether there is a riskof the target vehicle toppling over based on the wind force of the windand the one or more characteristics of the target vehicle. The methodincludes generating a notification about the risk.

In another embodiment, a non-transitory computer-readable medium forgenerating a notification about a risk of a target vehicle toppling overdue to wind and including instructions that when executed by one or moreprocessors cause the one or more processors to perform one or morefunctions is disclosed. The instructions include instructions todetermine a wind force of the wind at a location of the target vehicle,determine one or more characteristics of the target vehicle, determinewhether there is a risk of the target vehicle toppling over based on thewind force of the wind and the one or more characteristics of the targetvehicle, and generate a notification about the risk.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of the specification, illustrate various systems, methods, andother embodiments of the disclosure. It will be appreciated that theillustrated element boundaries (e.g., boxes, groups of boxes, or othershapes) in the figures represent one embodiment of the boundaries. Insome embodiments, one element may be designed as multiple elements ormultiple elements may be designed as one element. In some embodiments,an element shown as an internal component of another element may beimplemented as an external component and vice versa. Furthermore,elements may not be drawn to scale.

FIG. 1 is an example of a vehicle topple risk notification system.

FIG. 2 illustrates a block diagram of a vehicle incorporating a vehicletopple risk notification system.

FIG. 3 illustrates one embodiment of the vehicle topple risknotification system of FIG. 2 .

FIG. 4 illustrates a diagram of a vehicle topple risk notificationsystem in a cloud-based configuration.

FIG. 5 illustrates a diagram of aerodynamic forces that act on avehicle.

FIG. 6 is a flowchart illustrating one embodiment of a method associatedwith generating a notification about a risk of a target vehicle topplingover due to wind.

FIG. 7 is an example of a vehicle topple risk notification scenario.

DETAILED DESCRIPTION

Systems, methods, and other embodiments associated with generating anotification about a risk of a target vehicle toppling over due to windis disclosed. A vehicle travelling on a route may be unable to determinethat there is a portion of the route that may become inaccessible due toa target vehicle, proximate to the portion of the route, toppling overdue to wind.

Accordingly, in one embodiment, the disclosed approach is a system thatgenerates a notification about the risk of the target vehicle topplingover due to wind. As an example, the system may receive informationabout the environment from vehicle sensors and non-vehicle entities suchas roadside servers, environment information database(s) and trafficinformation database(s). The information about the environment mayinclude the presence of a wind, a wind speed, the wind force of thewind, the location of the target vehicle, the weather at the location,the traffic at the location, and the road conditions. The system mayreceive information about the target vehicle(s) and surroundingvehicle(s) from vehicle sensors and non-vehicle entities such as theroadside servers and vehicle information database(s). The informationabout the vehicle(s) may include the speed of the target vehicle(s) andthe surrounding vehicle(s), dimensions of the target vehicle(s) and thesurrounding vehicle(s), and aerodynamic forces acting the targetvehicle(s).

The system may determine whether there is a risk that the target vehiclewill topple over due to wind using any suitable algorithm. The systemmay determine a possibility of the target vehicle toppling over based oncharacteristics of the target vehicle such as the type of vehicle andthe weight of the vehicle, and characteristics of the environment suchas weather conditions which may be based on data from weather services,and road conditions which may be based on data from traffic informationservices. As an example, the system may be located in a cloud server,and may predict the possibility of the target vehicle toppling overbased on data such as weather conditions from weather services, trafficconditions from traffic information services, and vehiclecharacteristics such as vehicle type, As an example, the system mayapply a machine learning algorithm using a digital twin of the targetvehicle as a machine learning model. In such an example, the systemgenerate a virtual environment based on the environment surrounding thetarget vehicle. The system may generate a virtual rendition of thetarget vehicle, surrounding vehicles, and/or wind(s) in the virtualenvironment, where the positions and trajectories of the virtualrenditions of the target vehicle, the surrounding vehicles, and windsmimic the positions and trajectories of the target vehicle, thesurrounding vehicles and winds, respectively. The system may determinewhether the target vehicle will topple over based on the positionsand/or trajectory of the virtual renditions of the target vehicle, thesurrounding vehicles and/or winds. Additionally and/or alternatively,the system may apply real-time and/or big data analytics based on thesensor data and the information from the various databases to determinewhether there is a risk of the target vehicle toppling over due to wind.The data may be based on current information such as the current windforce of the wind and the current lift force of the target vehicle. Thedata may be based on predicted information such as a future wind forceof the wind and a future lift force of target vehicle. The system maydetermine that there is a risk of the target vehicle toppling over inthe case where the current wind force meets or exceeds the sum of thecurrent lift force of the target vehicle and a safety factor or wherethe future wind force meets or exceeds the sum of the future lift forceand the safety factor.

The system may be in a host vehicle and/or in a cloud server. The hostvehicle may be any vehicle other than the target vehicle. The system mayfurther determine the impact that the toppling of the target vehicle mayhave on the surrounding vehicle(s). The system may further determine anaction for impacted vehicles to take such as taking an alternate route,slowing down, and/or parking.

In a case where the system predicts that the target vehicle will toppleover, the system may generate a notification. The system may send thenotification to the host vehicle, a surrounding vehicle, a secondvehicle, and/or a non-vehicular entity like a cloud server or aninformation database. The notification may include information about theimpact of the target vehicle toppling over, and an action that theimpacted vehicle may take. As an example, the notification may include awarning to one or more other vehicles, indicating that the targetvehicle may topple over. The notification may further include asuggestion to the other vehicle(s) to maintain a safe distance, avoidthe road that the target vehicle is travelling on, and/or take analternate route.

Detailed embodiments are disclosed herein; however, it is to beunderstood that the disclosed embodiments are intended only as examples.Therefore, specific structural and functional details disclosed hereinare not to be interpreted as limiting, but merely as a basis for theclaims and as a representative basis for teaching one skilled in the artto variously employ the aspects herein in virtually any appropriatelydetailed structure. Further, the terms and phrases used herein are notintended to be limiting but rather to provide an understandabledescription of possible implementations. Various embodiments are shownin the figures, but the embodiments are not limited to the illustratedstructure or application.

It will be appreciated that for simplicity and clarity of illustration,where appropriate, reference numerals have been repeated among thedifferent figures to indicate corresponding or analogous elements. Inaddition, numerous specific details are set forth in order to provide athorough understanding of the embodiments described herein. However, itwill be understood by those of ordinary skill in the art that theembodiments described herein may be practiced without these specificdetails.

Referring to FIG. 1 , an example of a vehicle topple risk notificationsystem 100 is shown. The vehicle topple risk notification system 100 mayinclude various elements, which may be communicatively linked in anysuitable form. As an example, the elements may be connected, as shown inFIG. 1 . Some of the possible elements of the vehicle topple risknotification system 100 are shown in FIG. 1 and will now be described.It will be understood that it is not necessary for the vehicle topplerisk notification system 100 to have all the elements shown in FIG. 1 ordescribed herein. The vehicle topple risk notification system 100 mayhave any combination of the various elements shown in FIG. 1 . Further,the vehicle topple risk notification system 100 may have additionalelements to those shown in FIG. 1 . In some arrangements, the vehicletopple risk notification system 100 may not include one or more of theelements shown in FIG. 1 . Further, it will be understood that one ormore of these elements may be physically separated by large distances.

The elements of the vehicle topple risk notification system 100 may becommunicatively linked through one or more communication networks. Asused herein, the term “communicatively linked” may include direct orindirect connections through a communication channel or pathway oranother component or system. A “communication network” means one or morecomponents designed to transmit and/or receive information from onesource to another. The one or more of the elements of the vehicle topplerisk notification system 100 may include and/or execute suitablecommunication software, which enables the various elements tocommunicate with each other through the communication network andperform the functions disclosed herein.

The one or more communication networks may be implemented as, orinclude, without limitation, a wide area network (WAN), a local areanetwork (LAN), the Public Switched Telephone Network (PSTN), a wirelessnetwork, a mobile network, a Virtual Private Network (VPN), theInternet, and/or one or more intranets. The communication networkfurther may be implemented as or include one or more wireless networks,whether short-range (e.g., a local wireless network built using aBluetooth or one of the IEEE 802 wireless communication protocols, e.g.,802.11a/b/g/i, 802.15, 802.16, 802.20, Wi-Fi Protected Access (WPA), orWPA2) or long-range (e.g., a mobile, cellular, and/or satellite-basedwireless network; GSM, TDMA, CDMA, WCDMA networks or the like). Thecommunication network may include wired communication links and/orwireless communication links. The communication network may include anycombination of the above networks and/or other types of networks.

The vehicle topple risk notification system 100 may include one or moreconnected host vehicles 102. As used herein, “vehicle” means any form ofmotorized transport. In one or more implementations, the vehicle may bean automobile. While arrangements will be described herein with respectto automobiles, it will be understood that embodiments are not limitedto automobiles. In some implementations, the vehicle may be any devicethat, for example, transports passengers and includes the noted sensorydevices from which the disclosed predictions and determinations may begenerated. The vehicle may be any other type of vehicle that may be usedon a roadway, such as a motorcycle. In some implementations, the vehiclemay be a watercraft, an aircraft, or any other form of motorizedtransport. The host vehicle 102 may be a connected vehicle that iscommunicatively linked to one or more elements of the vehicle topplerisk notification system 100.

The vehicle topple risk notification system 100 may include one or moreentities that may exchange information with the host vehicle 102. Theentities may include other vehicles such as target vehicle (s) 104 thatare being monitored as they travel on a road 101 to determine whetherthey will topple over due to wind 103, surrounding vehicle(s) 104B thatare proximate to the target vehicle (s) 104, and/or vehicles (also knownas the second vehicles) 102B that are driving towards on or towards theroad 101, and may be impacted by the target vehicle(s) 104. The entitiesmay include roadside units and/or other information databases such as avehicle information database 105, an environment information database106, and a traffic information database 107.

The vehicle topple risk notification system 100 may include one or moreservers 112. The server(s) 112 may be, for example, cloud-basedserver(s) or edge-based server(s). The server(s) 112 may communicatewith one or more vehicles 102, 102B, 104, 104B over a communicationmodule, such as by any type of vehicle-to-cloud (V2C) communications,now known or later developed. The server(s) 112 may receive data fromand send data to the vehicle(s) 102, 102B. Alternatively and/oradditionally, the server 112, the host vehicle 102 and the othervehicles 102B, 104, 104B may communicate over other suitable means suchas vehicle-to-vehicle (V2V) communications and/or vehicle-to-everything(V2X) communications.

The vehicle topple risk notification system 100 may generate a virtualenvironment 110 with virtual renditions 114, 114B of vehicles 104, 104Bin the environment. The virtual renditions 114, 114B of the vehicles104, 104B may include virtual versions 118, 118B of the vehicles 104,104B and metadata 120, 120B that includes information (such as speed andaerodynamic forces) relating to the vehicles 104, 104B. The vehicletopple risk notification system 100 may generate a virtual rendition 113of wind 103 in the environment. The virtual rendition 113 of the wind103 may include a virtual version 117 of the wind 103 and metadata 119that includes information (such as the wind force and the direction) ofthe wind 103. The virtual environment 110 including the virtualrenditions 114, 114B, 113 of the vehicles 104, 104B and the wind 103 inthe environment may be displayed on a display interface visible to avehicle operator.

Referring to FIG. 2 , a block diagram of the host vehicle 102incorporating a vehicle topple risk notification system 100 isillustrated. The host vehicle 102 includes various elements. It will beunderstood that in various embodiments, it may not be necessary for thehost vehicle 102 to have all of the elements shown in FIG. 2 . The hostvehicle 102 may have any combination of the various elements shown inFIG. 2 . Further, the host vehicle 102 may have additional elements tothose shown in FIG. 2 . In some arrangements, the host vehicle 102 maybe implemented without one or more of the elements shown in FIG. 2 .While the various elements are shown as being located within the hostvehicle 102 in FIG. 2 , it will be understood that one or more of theseelements may be located external to the host vehicle 102. Further, theelements shown may be physically separated by large distances. Forexample, as discussed, one or more components of the disclosed systemmay be implemented within a vehicle while further components of thesystem are implemented within a cloud-computing environment, asdiscussed further subsequently.

Some of the possible elements of the host vehicle 102 are shown in FIG.2 and will be described along with subsequent figures. However, adescription of many of the elements in FIG. 2 will be provided after thediscussion of FIGS. 3-7 for purposes of brevity of this description.Additionally, it will be appreciated that for simplicity and clarity ofillustration, where appropriate, reference numerals have been repeatedamong the different figures to indicate corresponding or analogouselements. In addition, the discussion outlines numerous specific detailsto provide a thorough understanding of the embodiments described herein.Those of skill in the art, however, will understand that the embodimentsdescribed herein may be practiced using various combinations of theseelements. In any case, as illustrated in the embodiment of FIG. 2 , thehost vehicle 102 includes a vehicle topple risk notification system 100that is implemented to perform methods and other functions as disclosedherein relating to generating a notification about the risk of a targetvehicle 104 toppling over due to wind. As will be discussed in greaterdetail subsequently, the vehicle topple risk notification system 100, invarious embodiments, may be implemented partially within the hostvehicle 102 and may further exchange communications with additionalaspects of the vehicle topple risk notification system 100 that areremote from the host vehicle 102 in support of the disclosed functions.Thus, while FIG. 3 generally illustrates the vehicle topple risknotification system 100 as being self-contained, in various embodiments,the vehicle topple risk notification system 100 may be implementedwithin multiple separate devices some of which may be remote from thehost vehicle 102.

With reference to FIG. 3 , one embodiment of the vehicle topple risknotification system 100 of FIG. 2 is further illustrated. The vehicletopple risk notification system 100 is shown as including a processor210 from the host vehicle 102 of FIG. 2 . Accordingly, the processor 210may be a part of the vehicle topple risk notification system 100, thevehicle topple risk notification system 100 may include a separateprocessor from the processor 210 of the host vehicle 102, and/or thevehicle topple risk notification system 100 may access the processor 210through a data bus or another communication path. In further aspects,the processor 210 is a cloud-based resource that communicates with thevehicle topple risk notification system 100 through a communicationnetwork. In one embodiment, the vehicle topple risk notification system100 includes a memory 310 that stores an environment characteristicdetermination module 320, a vehicle characteristic determination module325, a risk determination module 330, an impact avoidance module 335,and a notification module 340. The memory 310 is a random-access memory(RAM), read-only memory (ROM), a hard-disk drive, a flash memory, orother suitable memory for storing the modules 320, 325, 330, 335, and340. The modules 320, 325, 330, 335, and 340 are, for example,computer-readable instructions within the physical memory 310 that whenexecuted by the processor 210 cause the processor 210 to perform thevarious functions disclosed herein.

In one embodiment, the vehicle topple risk notification system 100includes a data store 350. The data store 350 is, in one embodiment, anelectronic data structure (e.g., a database) stored in the memory 310 oranother data store and that is configured with routines that may beexecuted by the processor 210 for analyzing stored data, providingstored data, organizing stored data, and so on. Thus, in one embodiment,the data store 350 stores data used by the modules 320, 325, 330, 335,and 340 in executing various functions. In one embodiment, the datastore 350 includes the sensor data 219 along with, for example,environment information data 360, vehicle information data 370, and orother information that is used by the modules 320, 325, 330, 335, and340.

The sensor data 219 may originate from the sensor system 220 of the hostvehicle 102. Additionally and/or alternatively, the sensor data 219 mayoriginate from one or more external sources. The external sources mayinclude any entities capable of wireless communication such as othervehicles including the target vehicle 104, the surrounding vehicle(s)104B, roadside units, servers 112, and/or databases 105, 106, 107.

The sensor data 219 may include detected vehicles, detected wind, and/orphysical characteristics in the environment surrounding the targetvehicle 104. The sensor data 219 may further include metadata associatedwith the detected vehicles 102, 102B, 104, 104B, wind 103, and thephysical characteristics of the environment. The associated metadata mayindicate the type of the detected vehicle 102, 102B, 104, 104B (e.g., atruck, a sedan, a bus, a motorcycle, a bicycle), the type of weatherconditions (e.g., wind speed, rain, etc.), and the type of roadconditions (e.g., gradient level, friction level, etc.). The sensor data219 may include traffic information such as traffic levels, a number ofvehicles, the type of vehicle(s), the position of the vehicle(s)relative to each other, the speed of the vehicle(s), and/or thedirection of travel of the vehicle(s). The sensor data 219 may includeinformation about the position of the detected vehicle relative to thedetecting sensor.

The metadata associated with the physical characteristics of theenvironment may include the location, the dimensions, and the conditionof the road 101. The location of the road 101 may include geographiccoordinates of the road 101 and the position of the road 101 relative toother roads. The dimensions of the road 101 may include the length ofthe road 101, the width of the road 101, the gradient level or slope ofthe road 101, the curvature of the road 101, and/or the friction levelof the road 101. The condition of the road 101 may include informationabout the physical condition of the road 101 such as the presence ofpotholes, road debris, vegetation, occlusions, and/or the presence ofroad delineators such as lane markers, road edge markers, traffic signs,traffic lights, and communicative roadside units.

The sensor data 219 may include information about a weather condition inthe environment. As an example, the sensor data 219 may includeinformation about a detected wind 103 such as the wind speed, the windforce and/or the direction of the detected wind 103. The sensor data 219may include information about precipitation such as snow, rain, and/orhail, and the impacts of the precipitation such as fallen snow levelsand flooding. The sensor data 219 may include information about severeweather conditions such as a thunderstorm, a cyclone, and/or a tornado.

The environment information data 360 may include information about aweather condition, traffic, and/or a physical characteristic of theenvironment surrounding the target vehicle 104. The environmentinformation data 360 may originate from one or more databases such as anenvironment information database 106 and/or a traffic informationdatabase 107.

The information about the weather condition may include a current and/orfuture weather condition of a location in the environment and therelated geographic coordinates for the location in the environment. Aweather condition may include, as an example, presence of a tornado, acyclone, wind and/or precipitation such as snow, rain, and/or hail. Theweather condition may include the wind speed, the wind force of wind,the direction of the wind, and/or the amount of precipitation that hasfallen. The weather condition may further include impacts of weathersuch as fog levels, fallen snow levels (i.e. the amount of snow on theground), and/or flooding. As previously mentioned, the weather conditionmay be based on the current weather condition and/or the future weathercondition. The weather condition may be updated periodically and/oron-demand.

The information about the traffic may include information about thecurrent and/or future traffic levels at the location. The informationabout the traffic may include the number of vehicles, the type ofvehicle(s), the position of the vehicle(s) relative to each other, thespeed of the vehicle(s), the direction of travel of the vehicle(s), andtraffic rules based on the jurisdiction at the location. The informationabout traffic may be based on observed events and/or historical data.

The information about physical characteristics of the environment mayinclude the location, the dimensions, and the condition of the road 101.The location of the road 101 may include geographic coordinates of theroad 101 and the position of the road 101 relative to other roads. Thedimensions of the road 101 may include the length of the road 101, thewidth of the road 101, the slope of the road 101, the curvature of theroad 101, and/or the friction level of the road 101. The condition ofthe road 101 may include information about the physical condition of theroad 101 such as the presence of potholes, road debris, vegetation,occlusions, and/or the presence of road delineators such as lanemarkers, road edge markers, traffic signs, traffic lights, andcommunicative roadside units.

In one embodiment, the environment characteristic determination module320 includes instructions that function to control the processor 210 todetermine a wind force of the wind 103 at a location of the targetvehicle 104. The wind force of the wind 103 may include a current windforce of the wind 103 and/or a future wind force of the wind 103. As anexample, the environment characteristic determination module 320 mayreceive the current wind force of the wind 103 and/or a future windforce of the wind 103 at the location of the target vehicle 104 fromsensor data 219 and/or environment information data 360. As anotherexample, the environment characteristic determination module 320 mayreceive the current wind speed and may determine the wind force of thewind 103 based on the wind speed using any suitable algorithm. In suchan example, the environment characteristic determination module 320 mayapply a formula such as:F _(w) =A×P×C _(d) ×K _(z) ×G _(h),

where F_(w) is the wind force of the wind, A is a two dimensionalsurface area that the wind is hitting; P is wind pressure, which isbased on the speed of the wind, C_(d) is the drag coefficient, which isthe force that air exerts on a vehicle, K_(z) is the exposurecoefficient, which is based on a vertical distance from the ground to amidpoint of the vehicle, and G_(h) is the gust response factor, which isbased on a vertical height of the vehicle.

The environment characteristic determination module 320 may retrieve thecomponents of the formula from sensor data 219 and/or environmentinformation data 360.

The environment characteristic determination module 320 may includeinstructions that function to control the processor 210 to determine acurrent and/or a future weather condition at the location of the targetvehicle 104. As an example, the environment characteristic determinationmodule 320 may receive weather information from sensor data 219 and/orenvironment information data 360.

The environment characteristic determination module 320 may includeinstructions that function to control the processor 210 to determine atraffic level at the location. As an example, the environmentcharacteristic determination module 320 may receive traffic level fromsensor data 219 and/or environment information data 360.

The environment characteristic determination module 320 may includeinstructions that function to control the processor 210 to determine aroad characteristic at the location. As an example, the environmentcharacteristic determination module 320 may receive a roadcharacteristic from sensor data 219 and/or environment information data360.

In one embodiment, the vehicle characteristic determination module 325includes instructions that function to control the processor 210 toselect one or more target vehicle 104 s 104. The vehicle characteristicdetermination module 325 may select the target vehicle(s) 104 based onany suitable algorithm or criteria. As an example, the vehiclecharacteristic determination module 325 may select vehicles travellingthrough a defined region such as a section of a highway. In such anexample, a geofence may be set up around the defined region and thevehicle(s) within the geofence are selected as target vehicle(s) 104. Asanother example, the vehicle characteristic determination module 325 mayselect the target vehicle(s) 104 based on their proximity to the hostvehicle 102 and/or the second vehicle(s) 102B. The target vehicle(s) 104may be within a predetermined radius (e.g., 0.5 mile, 1 mile) of thehost vehicle 102 and/or the second vehicle(s) 104B. The targetvehicle(s) 104 may be travelling ahead of, beside, behind the hostvehicle 102 and/or the second vehicle(s) 102B. As an example, and inaddition or as an alternative, the vehicle characteristic determinationmodule 325 may select target vehicle(s) 104 based on vehicle size,vehicle speed, and/or vehicle configuration such as a vehicle with atrailer.

In one embodiment, the vehicle characteristic determination module 325includes instructions that function to control the processor 210 todetermine one or more characteristics of the target vehicle 104. The oneor more characteristics of the target vehicle 104 may include one ormore of a weight of the target vehicle 104, a dimension of the targetvehicle 104, a center of gravity of the target vehicle 104, a speed ofthe target vehicle 104, and aerodynamic forces on the target vehicle104. As an example, the vehicle characteristic determination module 325may request and/or receive the characteristics of the target vehicle 104from the target vehicle 104 using V2V communications. In such anexample, the vehicle characteristic determination module 325 may requestand/or receive the weight of the target vehicle 104, the dimension ofthe target vehicle 104, the center of gravity of the target vehicle 104,the speed of the target vehicle 104, and the aerodynamic forces on thetarget vehicle 104 from the target vehicle 104. As another example, thevehicle characteristic determination module 325 may receive sensor data219 that includes information about the target vehicle 104 such as thecharacteristics of the target vehicle 104. As another example, thevehicle characteristic determination module 325 may receive sensor data219 that includes an identifying feature of the target vehicle 104 suchas a license plate, a vehicle brand, and/or vehicle model. In such anexample, the vehicle characteristic determination module 325 may requestand receive information about the target vehicle 104 from the vehicleinformation database 105 based on the identifying feature. The vehicleinformation database 105 may include information about vehicles. As anexample, the vehicle information database 105 may include a vehiclelicense plate number, a vehicle brand name, a vehicle model name/number,the year of manufacture, a weight estimate, a dimension estimate, acenter of gravity estimate, and aerodynamic forces.

In one embodiment, the risk determination module 330 includesinstructions that function to control the processor 210 to determinewhether there is a risk of the target vehicle 104 toppling over based onthe wind force of the wind 103 at the location of the target vehicle 104and the characteristic(s) of the target vehicle 104. As an example, therisk determination module 330 may determine the risk of the targetvehicle 104 toppling over based on the traffic level at the location ofthe target vehicle 104, the wind force of the wind 103 at the location,and the characteristic(s) of the target vehicle 104. As another example,the risk determination module 330 may determine the risk of the targetvehicle 104 toppling over based on the road characteristic(s), the windforce of the wind 103, and the characteristic(s) of the target vehicle104. As another example, the risk determination module 330 may includeinstructions that function to control the processor 210 to determine animpact of the target vehicle 104 toppling over to an environment aroundthe target vehicle 104.

The risk determination module 330 may apply any suitable model and/oralgorithm to determine whether there is a risk of the target vehicle 104toppling over. As an example, the risk determination module 330 maydevelop a digital twin model for the target vehicle 104. In such anexample, the risk determination module 330 may generate a virtualenvironment 110 that includes a virtual rendition 114 of the targetvehicle 104, a virtual rendition 114B of the surrounding vehicle(s)104B, and a virtual rendition 113 of the wind 103 in the environment. Aspreviously mentioned, the virtual renditions 114, 114B of the vehicles104, 104B may include virtual versions 118, 118B of the vehicles 104,104B and metadata 120, 120B that includes information (such as speed andaerodynamic forces) relating to the vehicles 104, 104B. The virtualrendition 113 of the wind 103 may include a virtual version 117 of thewind 103 and metadata 119 that includes information (such as the windspeed, the wind force and the direction) of the wind 103.

The risk determination module 330 may generate the virtual environment110 based on the characteristics of the environment and/or thecharacteristics of the target vehicle 104. The characteristics of theenvironment, as previously mentioned, may include weather information,traffic information, and/or physical characteristics of the road 101. Asan example, the risk determination module 330 may generate the virtualenvironment 110 by fusing together information received from the sensordata 219, the environment information data 360, and/or the vehicleinformation data 370. The risk determination module 330 may determinethe position of the virtual version 118 of the target vehicle 104 withinthe virtual environment 110 based on the sensor data 219, theenvironment information data 360, and/or the vehicle information data370. As an example, the risk determination module 330 may use anysuitable algorithm such as a machine learning algorithm or an artificialintelligence process to determine the size of the virtual version 118 ofthe target vehicle 104 and the position of the virtual version 118 ofthe target vehicle 104 within the virtual environment. The riskdetermination module 330 may generate the virtual environment 110 in anysuitable format such as a graphical format, a text format and/or atabulated format. The risk determination module 330 may output thevirtual environment 110 to a display interface in the host vehicle 102.

The risk determination module 330 may determine the risk of the targetvehicle 104 toppling over using an algorithm such as the topplingalgorithm described FIG. 5 . As an example, the risk determinationmodule 330 may determine whether there is a risk of the virtualrendition of the target vehicle 104 toppling over. In such an example,the risk determination module 330 may apply the toppling algorithm tothe parameters of the digital twin model, e.g., the virtual rendition ofthe target vehicle 104, and the virtual environment. As another example,the risk determination module 330 may determine whether there is a riskof the target vehicle 104 toppling over by applying the topplingalgorithm to the vehicle characteristics and the environmentcharacteristics. In other words, the risk determination module 330 maydetermine the possibility of the target vehicle 104 toppling over basedon vehicle characteristics such as the type of vehicle, and environmentcharacteristics such as weather conditions, and road conditions. Therisk determination module 330 may apply real-time and/or big dataanalytics to identify a hazardous condition such as a tornado, acyclone, and/or a high wind, and to determine whether there is a risk ofthe target vehicle 104 toppling over based on the identified hazardouscondition.

The risk determination module 330 may include instructions that functionto control the processor 210 to determine an impact of the targetvehicle 104 toppling over to the environment around the target vehicle104. The risk determination module 330 may determine whether there is arisk of the target vehicle 104 toppling over, and in that case, theimpact on surrounding vehicles 104B based on various factors such as thetrajectory at which the target vehicle 104 toppled over, speed of travelof the target vehicle 104 and the surrounding vehicles 104B, size of thetarget vehicle 104 and the surrounding vehicles 104B, proximity of thetarget vehicle 104 and surrounding vehicles 104B, weather conditions,traffic conditions, and time of day. As an example, the riskdetermination module 330 may generate and include virtual renditions114B of the surrounding vehicle(s) 104B in the virtual environment 110.The risk determination module 330 may monitor virtual renditions 114,114B of the target vehicle 104 and the surrounding vehicles to determinethe trajectory of the virtual renditions 114, 114B of target vehicle 104and the surrounding vehicles 104B. As an example, the risk determinationmodule 330 may determine the trajectory of the target vehicle 104 andthe surrounding vehicles 104B based on the present and past positions ofthe virtual renditions 114, 114B of the target vehicle 104 and thesurrounding vehicles 104B in the virtual environment 110, respectively.The risk determination module 330 may extrapolate the trajectories todetermine whether the extrapolated trajectories intersect with eachother. In the case where the extrapolated trajectories intersect witheach other, the risk determination module 330 may predict that thevirtual rendition 114 of the target vehicle 104 will block the path ofand/or collide with the virtual rendition 114B of the surroundingvehicle(s) 104B.

In one embodiment, the impact avoidance module 335 includes instructionsthat function to control the processor 210 to determine an alternateroute for a second vehicle 102B to travel so as to avoid the impact ofthe target vehicle 104 toppling over. The second vehicle 102B may be oneof the surrounding vehicles 104B and/or the host vehicle 102.Additionally and/or alternatively, the second vehicle 102B may be avehicle travelling towards the environment surrounding the targetvehicle 104. As an example and in a case that the second vehicle 102Bhas a predetermined route of travel, the impact avoidance module 335 maydetermine whether the route of the second vehicle 102B traverses theenvironment impacted by the target vehicle 104 toppling over. In such anexample, the impact avoidance module 335 may overlay the route of thesecond vehicle 102B in the virtual environment to determine whether theroute of the second vehicle 102B and the environment impacted by thetarget vehicle 104 toppling over overlap. In the case that the route andthe environment overlap, the impact avoidance module 335 may use anysuitable mapping algorithm to re-route the second vehicle 102B anddetermine the alternate route.

In one embodiment, the notification module 340 includes instructionsthat function to control the processor 210 to generate a notificationabout the risk. The notification module 340 may include instructionsthat function to control the processor 210 to send the notification toat least one of a second vehicle 102B and a server 112. The notificationmay include information about the impact and/or the alternate route forthe second vehicle 102B so as to avoid the impact. As an example, thenotification may include a warning to the second vehicle 102B,indicating that the target vehicle 104 may topple over. The notificationmay further include a suggestion to the second vehicle 102 to maintain asafe distance, avoid the road that the target vehicle is travelling on,and/or take the alternate route. The notification module 340 maygenerate the notification in any suitable format such as text, images,and audio. As an example, the notification module 340 may output atleast one of a visual alert and an audible alert in the second vehicle102B and/or the server 112. As an example, the visual alert may bedisplayed on a display interface in the second vehicle 102B that isvisible to the second vehicle operator. As another example, the audiblealert may be output on the vehicle speakers. The notification module 340may send the notification to a server 112 and/or a database 105, 106,107 using any suitable communication network.

The vehicle topple risk notification system 100 may be furtherimplemented as a cloud-based system that functions within acloud-computing environment 400 as illustrated in relation to FIG. 4 .That is, for example, the vehicle topple risk notification system 100may acquire telematics data (i.e., sensor data 219) from vehicles, andenvironment information data 360 and/or vehicle information data 370from external sources such as an external database. The vehicle topplerisk notification system 100 may execute as a cloud-based resource thatis comprised of devices (e.g., servers 112) remote from vehicles togenerate a notification about a risk of a target vehicle 104 topplingover due to wind based on vehicle characteristics such as type ofvehicle and environment characteristics such as weather conditions androad conditions. Accordingly, the vehicle topple risk notificationsystem 100 may communicate with vehicles (e.g., vehicles 402A, 402B, and402C) that are geographically distributed. In one approach, acloud-based vehicle topple risk notification system 100 may collect thedata 219, 360, 370 from components or separate instances of the vehicletopple risk notification system 100 that are integrated with thevehicles 402A, 402B, 402C.

Along with the communications, the vehicles 402A, 402B, 402C may providesensor data 219. As such, the cloud-based aspects of the vehicle topplerisk notification system 100 may then process the sensor data 219separately for the vehicles 402A, 402B, 402C to generate the virtualenvironment 110, the virtual renditions 114, 114B of the target vehicle104 and the surrounding vehicle(s) 104B. In further aspects,vehicle-based systems may perform part of the processing while thecloud-computing environment 400 may handle a remaining portion orfunction to validate results of the vehicle-based systems. It should beappreciated that apportionment of the processing between the vehicle402A, 402B, 402C and the cloud may vary according to differentimplementations. Additional aspects of the cloud-computing environment400 are discussed above in relation to components of the vehicle topplerisk notification system 100 and FIG. 3 .

FIG. 5 . illustrates an example of a toppling algorithm for determiningwhether there is a risk of the target vehicle 104 toppling over. Theaerodynamic forces on the target vehicle 104 are defined as:

-   -   F_(x)=Drag: Force along the longitudinal axis, opposite to        vehicle movement    -   F_(y)=Lateral force: Force along the transverse axis    -   F_(z,front)=Lift_(front): Force along the vertical axis at front        wheel    -   F_(z,rear)=Lift_(rear): Force along the vertical axis at rear        wheel    -   F_(z)=Lift: Force along the vertical axis,        F_(z)=F_(z,front)+F_(z,rear)    -   M_(x)=Roll: Rotation of the vehicle around the longitudinal axis    -   M_(y)=Pitch: Rotation of the vehicle around the transverse axis    -   M_(z)=Yaw: Rotation of the vehicle around the vertical axis

As previously mentioned, an example of an algorithm for determining thewind force of the wind 103 is F_(w)=A×P×C_(d)×K_(z)×G_(h), and the riskdetermination module 330 may receive the aerodynamic forces on thetarget vehicle 104 from the vehicle information database 107.

The risk determination module 330 may determine or receive the currentwind force F_(w), the future wind force F_(wf), the current vehicle liftF_(z), and the future wind force F_(zf). The risk determination module330 may determine a safety factor FS. The risk determination module 330may apply one of the following formulae:F _(w) >=F _(z) +FSF _(wf) >=F _(zf) +FS

If the risk determination module 330 determines that one or both of theequations are true, then the risk determination module 330 determinesthat there is a risk that the target vehicle 104 will topple over. Therisk determination module 330 may send a signal to the notificationmodule 340 indicating that there is a risk that the target vehicle 104will topple over. Additionally and/or alternatively, the riskdetermination module 330 may output a signal to the notification module340 indicating that there is no risk that the target vehicle 104 willtopple over when the risk determination module 330 determines that bothequations are false and there is no risk of the target vehicle 104toppling over.

FIG. 6 illustrates a method 600 for generating a notification about arisk of a target vehicle 104 toppling over due to wind. The method 600will be described from the viewpoint of the host vehicle 102 of FIG. 2and the vehicle topple risk notification system 100 of FIG. 3 . However,the method 600 may be adapted to be executed in any one of severaldifferent situations and not necessarily by the host vehicle 102 of FIG.2 and/or the vehicle topple risk notification system 100 of FIG. 3 .

At step 610, the vehicle topple risk notification system 100 may causethe processor(s) 210 to determine a wind force of the wind 103 at alocation of the target vehicle 104. As an example, the environmentcharacteristic determination module 320 may receive the wind speed anddetermine the wind force at the location. As previously mentioned, theenvironment characteristic determination module 320 may determine thecurrent wind force and a future wind force.

At step 620, the vehicle topple risk notification system may cause theprocessor(s) 210 to determine the characteristic(s) of the targetvehicle 104. As an example, the vehicle characteristic determinationmodule 325 may determine the characteristics of the target vehicle 104.As previously mentioned, the vehicle characteristic determination module325 may determine the dimensions of the target vehicle 104, and theaerodynamic forces applying to the target vehicle 104 such as a currentlift force and/or a future lift force.

At step 630, the vehicle topple risk notification system 100 may causethe processor(s) 210 to determine whether there is a risk of the targetvehicle 104 toppling over based on the wind force of the wind 103 andthe characteristics of the target vehicle 104. As previously mentioned,the risk determination module 330 may determine the risk based on thecurrent and future wind force of the wind 103 and the current and futurelift force on the target vehicle 104. The risk determination module 330may generate a virtual environment 110 and a virtual rendition of thetarget vehicle 104 based on sensor data 219, environment informationdata 360, and/or vehicle information data. The risk determination module330 may determine the risk based on the virtual environment 110 and avirtual rendition of the target vehicle 104.

At step 640, the vehicle topple risk notification system may cause theprocessor(s) 210 to generate a notification about the risk. Aspreviously mentioned, the notification module 340 may generate thenotification about the risk and may send the notification to a secondvehicle 102B and/or a non-vehicular entity like a server 112. Thevehicle topple risk notification system 100 may cause the processor(s)210 to determine the impact of the target vehicle 104 toppling overand/or an alternate route for a second vehicle 102B so that the secondvehicle 102B may avoid the impact. The notification may includeinformation about the impact and/or the alternate route.

A non-limiting example of the operation of the vehicle topple risknotification system 100 and/or one or more of the methods will now bedescribed in relation to FIG. 7 . FIG. 7 shows an example of a vehicletopple risk notification scenario.

In FIG. 7 , the target vehicle 704, which is similar to the targetvehicle 104, may be travelling on a two-lane road 701, a surroundingvehicle 704B is travelling proximate to the target vehicle 704. The hostvehicle 702 and a second vehicle 702B are travelling behind the targetvehicle 104 on the same road 701. The host vehicle 702 is connected tothe vehicle information database 705, the environment informationdatabase 706, and the traffic information database 707 via the server712.

The vehicle topple risk notification system 700, or more specifically,the environment characteristic determination module 320 may receivesensor data 219 from the sensor system 220 in the host vehicle 702 andenvironment information data 360 from an environment informationdatabase 706. The environment characteristic determination module 320may determine the wind force of the wind 703 acting on the targetvehicle 704.

The vehicle topple risk notification system 700, or more specifically,the vehicle characteristic determination module 325 may receive sensordata 219 from the sensor system 220 in the host vehicle 702, and vehicleinformation data 370 from a vehicle information database 705. Thevehicle characteristic determination module 325 may determine thecharacteristics of the target vehicle 704 including the aerodynamicforces acting on the target vehicle 704.

The vehicle topple risk notification system 700, or more specifically,the risk determination module 330 may generate a virtual environment 710that includes virtual renditions 714, 714B of the target vehicle 704 andthe surrounding vehicle 704B. The virtual environment 710 may includevirtual renditions 713, 711 of the wind 703 and the road 701. Thevirtual rendition 714 of the target vehicle 704 includes a virtualversion 718 of the target vehicle 704 and related metadata 720. Thevirtual rendition 714B of the surrounding vehicle 704B includes avirtual version 718B of the surrounding vehicle 704B and relatedmetadata 720B. The virtual rendition 713 of the wind 703 includes avirtual version 717 of the wind 703 and related metadata 719.

The vehicle topple risk notification system 700, or more specificallythe risk determination module 330, may determine whether there is a riskof the target vehicle 704 toppling over based on the wind force F_(w) ofthe wind and the lift force F_(z) of the target vehicle 704. In thiscase and as an example, the risk determination module 330 may determinethat F_(w)>=F_(z)+FS is true and as such there is a risk of the targetvehicle 704 toppling over. The risk determination module 330 may furtherdetermine whether the target vehicle 704 will collide with thesurrounding vehicle 704B using the extrapolated trajectories of thevirtual renditions of the target vehicle 704 toppling and thesurrounding vehicle 704B.

The vehicle topple risk notification system 700, or more specificallythe notification module 340, may generate a notification indicating thatthe target vehicle 704 is likely to topple over and collide with thesurrounding vehicle 704B. The notification module 340 may send thenotification to the second vehicle 702B. The impact avoidance module 335may determine that the second vehicle 702B may travel on an alternatepath 701B to avoid the toppling and collision of the target vehicle 704.The notification module 340 may send a notification that includesinformation about an alternate route. The notification module 340 maysend the notification to a non-vehicle entity such as a trafficinformation database 707 that records traffic incidents.

FIG. 2 will now be discussed in full detail as an example environmentwithin which the system and methods disclosed herein may operate. Insome instances, the vehicle 102 (also known as the host vehicle) may beconfigured to switch selectively between an autonomous mode, one or moresemi-autonomous operational modes, and/or a manual mode. Such switchingmay be implemented in a suitable manner, now known or later developed.“Manual mode” means that all of or a majority of the navigation and/ormaneuvering of the vehicle is performed according to inputs receivedfrom a user (e.g., human driver). In one or more arrangements, thevehicle 102 may be a conventional vehicle that is configured to operatein only a manual mode. “Autonomous mode” refers to navigating and/ormaneuvering the vehicle 102 along a travel route using one or morecomputing systems to control the vehicle 102 with minimal or no inputfrom a human driver. In one embodiment, the vehicle 102 is configuredwith one or more semi-autonomous operational modes in which one or morecomputing systems perform a portion of the navigation and/or maneuveringof the vehicle along a travel route, and a vehicle operator (i.e.,driver) provides inputs to the vehicle to perform a portion of thenavigation and/or maneuvering of the vehicle 102 along a travel route.

The vehicle 102 may include one or more processors 210. In one or morearrangements, the processor(s) 210 may be a main processor of thevehicle 102. For instance, the processor(s) 210 may be an electroniccontrol unit (ECU). The vehicle 102 may include one or more data stores215 for storing one or more types of data. The data store 215 mayinclude volatile and/or non-volatile memory. Examples of suitable datastores 215 include RAM (Random Access Memory), flash memory, ROM (ReadOnly Memory), PROM (Programmable Read-Only Memory), EPROM (ErasableProgrammable Read-Only Memory), EEPROM (Electrically ErasableProgrammable Read-Only Memory), registers, magnetic disks, opticaldisks, hard drives, or any other suitable storage medium, or anycombination thereof. The data store 215 may be a component of theprocessor(s) 210, or the data store 215 may be operatively connected tothe processor(s) 210 for use thereby. The term “operatively connected,”as used throughout this description, may include direct or indirectconnections, including connections without direct physical contact.

In one or more arrangements, the one or more data stores 215 may includemap data 216. The map data 216 may include maps of one or moregeographic areas. In some instances, the map data 216 may includeinformation or data on roads, traffic control devices, road markings,structures, features, and/or landmarks in the one or more geographicareas. The map data 216 may be in any suitable form. In some instances,the map data 216 may include aerial views of an area. In some instances,the map data 216 may include ground views of an area, including360-degree ground views. The map data 216 may include measurements,dimensions, distances, and/or information for one or more items includedin the map data 216 and/or relative to other items included in the mapdata 216. The map data 216 may include a digital map with informationabout road geometry. The map data 216 may be high quality and/or highlydetailed.

In one or more arrangements, the map data 216 may include one or moreterrain maps 217. The terrain map(s) 217 may include information aboutthe ground, terrain, roads, surfaces, and/or other features of one ormore geographic areas. The terrain map(s) 217 may include elevation datain the one or more geographic areas. The map data 216 may be highquality and/or highly detailed. The terrain map(s) 217 may define one ormore ground surfaces, which may include paved roads, unpaved roads,land, and other things that define a ground surface.

The one or more data stores 215 may include sensor data 219. In thiscontext, “sensor data” means any information about the sensors that thevehicle 102 is equipped with, including the capabilities and otherinformation about such sensors. As will be explained below, the vehicle102 may include the sensor system 220. The sensor data 219 may relate toone or more sensors of the sensor system 220. As an example, in one ormore arrangements, the sensor data 219 may include information on one ormore LIDAR sensors 224 of the sensor system 220.

In some instances, at least a portion of the map data 216 and/or thesensor data 219 may be located in one or more data stores 215 locatedonboard the vehicle 102. Alternatively, or in addition, at least aportion of the map data 216 and/or the sensor data 219 may be located inone or more data stores 215 that are located remotely from the vehicle102.

As noted above, the vehicle 102 may include the sensor system 220. Thesensor system 220 may include one or more sensors. “Sensor” means anydevice, component and/or system that may detect, and/or sense something.The one or more sensors may be configured to detect, and/or sense inreal-time. As used herein, the term “real-time” means a level ofprocessing responsiveness that a user or system senses as sufficientlyimmediate for a particular process or determination to be made, or thatenables the processor to keep up with some external process.

In arrangements in which the sensor system 220 includes a plurality ofsensors, the sensors may work independently from each other.Alternatively, two or more of the sensors may work in combination witheach other. In such a case, the two or more sensors may form a sensornetwork. The sensor system 220 and/or the one or more sensors may beoperatively connected to the processor(s) 210, the data store(s) 215,and/or another element of the vehicle 102 (including any of the elementsshown in FIG. 2 ). The sensor system 220 may acquire data of at least aportion of the external environment of the vehicle 102 (e.g., nearbyvehicles).

The sensor system 220 may include any suitable type of sensor. Variousexamples of different types of sensors will be described herein.However, it will be understood that the embodiments are not limited tothe particular sensors described. The sensor system 220 may include oneor more vehicle sensors 221. The vehicle sensor(s) 221 may detect,determine, and/or sense information about the vehicle 102 itself. In oneor more arrangements, the vehicle sensor(s) 221 may be configured todetect, and/or sense position and orientation changes of the vehicle102, such as, for example, based on inertial acceleration. In one ormore arrangements, the vehicle sensor(s) 221 may include one or moreaccelerometers, one or more gyroscopes, an inertial measurement unit(IMU), a dead-reckoning system, a global navigation satellite system(GNSS), a global positioning system (GPS), a navigation system 247,and/or other suitable sensors. The vehicle sensor(s) 221 may beconfigured to detect, and/or sense one or more characteristics of thevehicle 102. In one or more arrangements, the vehicle sensor(s) 221 mayinclude a speedometer to determine a current speed of the vehicle 102.

Alternatively, or in addition, the sensor system 220 may include one ormore environment sensors 222 configured to acquire, and/or sense drivingenvironment data. “Driving environment data” includes data orinformation about the external environment in which the vehicle islocated or one or more portions thereof. For example, the one or moreenvironment sensors 222 may be configured to detect, quantify and/orsense wind 103 in at least a portion of the external environment of thevehicle 102 and/or the wind force of the wind 103. The one or moreenvironment sensors 222 may be configured to detect, measure, quantifyand/or sense other objects in the external environment of the vehicle102, such as, for example, other vehicles, the slope of the road, thecondition of the surface of the road, etc.

Various examples of sensors of the sensor system 220 will be describedherein. The example sensors may be part of the one or more environmentsensors 222 and/or the one or more vehicle sensors 221. However, it willbe understood that the embodiments are not limited to the particularsensors described.

As an example, in one or more arrangements, the sensor system 220 mayinclude one or more radar sensors 223, one or more LIDAR sensors 224,one or more sonar sensors 225, one or more cameras 226, one or morecommunication sensors 227, and/or one or more anemometers 228. In one ormore arrangements, the one or more cameras 226 may be high dynamic range(HDR) cameras or infrared (IR) cameras. The anemometer(s) 228 mayinclude any sensor capable of measuring wind speed. The communicationsensor(s) 227 such as radio frequency identification (RFID) andnear-field communication (NFC) readers may communicate with otherentities using any suitable means of communication such as Wi-Fi,Bluetooth, vehicle-to-infrastructure (V2I) wireless communication,vehicle-to-everything (V2X) wireless communication, RFIC, and NFC.

The vehicle 102 may include an input system 230. An “input system”includes any device, component, system, element or arrangement or groupsthereof that enable information/data to be entered into a machine. Theinput system 230 may receive an input from a vehicle passenger (e.g., adriver or a passenger). The vehicle 102 may include an output system235. An “output system” includes any device, component, or arrangementor groups thereof that enable information/data to be presented to avehicle passenger (e.g., a person, a vehicle passenger, etc.) such as adisplay interface.

The vehicle 102 may include one or more vehicle systems 240. Variousexamples of the one or more vehicle systems 240 are shown in FIG. 2 .However, the vehicle 102 may include more, fewer, or different vehiclesystems. It should be appreciated that although particular vehiclesystems are separately defined, each or any of the systems or portionsthereof may be otherwise combined or segregated via hardware and/orsoftware within the vehicle 102. The vehicle 102 may include apropulsion system 241, a braking system 242, a steering system 243,throttle system 244, a transmission system 245, a signaling system 246,and/or a navigation system 247. Each of these systems may include one ormore devices, components, and/or a combination thereof, now known orlater developed.

The navigation system 247 may include one or more devices, applications,and/or combinations thereof, now known or later developed, configured todetermine the geographic location of the vehicle 102 and/or to determinea travel route for the vehicle 102. The navigation system 247 mayinclude one or more mapping applications to determine a travel route forthe vehicle 102. The navigation system 247 may include a globalpositioning system, a local positioning system or a geolocation system.

The vehicle 102 may include one or more modules, at least some of whichare described herein. The modules may be implemented ascomputer-readable program code that, when executed by a processor 210,implement one or more of the various processes described herein. One ormore of the modules may be a component of the processor(s) 210, or oneor more of the modules may be executed on and/or distributed among otherprocessing systems to which the processor(s) 210 is operativelyconnected. The modules may include instructions (e.g., program logic)executable by one or more processor(s) 210. Alternatively, or inaddition, one or more data store 215 may contain such instructions.

In one or more arrangements, one or more of the modules described hereinmay include artificial or computational intelligence elements, e.g.,neural network, fuzzy logic or other machine learning algorithms.Further, in one or more arrangements, one or more of the modules may bedistributed among a plurality of the modules described herein. In one ormore arrangements, two or more of the modules described herein may becombined into a single module.

The vehicle 102 may include one or more autonomous driving modules 260.The autonomous driving module(s) 260 either independently or incombination with the vehicle risk notification system 100 may beconfigured to determine travel path(s), current autonomous drivingmaneuvers for the vehicle 102, future autonomous driving maneuversand/or modifications to current autonomous driving maneuvers based ondata acquired by the sensor system 220, driving scene models, and/ordata from any other suitable source such as determinations from thesensor data 219. “Driving maneuver” means one or more actions thataffect the movement of a vehicle. Examples of driving maneuvers includeaccelerating, decelerating, braking, turning, moving in a lateraldirection of the vehicle 102, changing travel lanes, merging into atravel lane, and/or reversing, just to name a few possibilities. Theautonomous driving module(s) 260 may be configured to implementdetermined driving maneuvers. The autonomous driving module(s) 260 maycause, directly or indirectly, such autonomous driving maneuvers to beimplemented. As used herein, “cause” or “causing” means to make,command, instruct, and/or enable an event or action to occur or at leastbe in a state where such event or action may occur, either in a director indirect manner. The autonomous driving module(s) 260 may beconfigured to execute various vehicle functions and/or to transmit datato, receive data from, interact with, and/or control the vehicle 102 orone or more systems thereof (e.g., one or more of vehicle systems 240).

The processor(s) 210, the vehicle topple risk notification system 100,and/or the autonomous driving module(s) 260 may be operatively connectedto communicate with the various vehicle systems 240 and/or individualcomponents thereof. For example, the processor(s) 210, the vehicletopple risk notification system 100, and/or the autonomous drivingmodule(s) 260 may be in communication to send and/or receive informationfrom the various vehicle systems 240 to control the movement, speed,maneuvering, heading, direction, etc. of the vehicle 102. Theprocessor(s) 210, the vehicle topple risk notification system 100,and/or the autonomous driving module(s) 260 may control some or all ofthese vehicle systems 240 and, thus, may be partially or fullyautonomous. The processor(s) 210, the vehicle topple risk notificationsystem 100, and/or the autonomous driving module(s) 260 may cause thevehicle 102 to accelerate (e.g., by increasing the supply of fuelprovided to the engine), decelerate (e.g., by decreasing the supply offuel to the engine and/or by applying brakes) and/or change direction(e.g., by turning the front two wheels). As used herein, “cause” or“causing” means to make, force, compel, direct, command, instruct,and/or enable an event or action to occur or at least be in a statewhere such event or action may occur, either in a direct or indirectmanner.

The vehicle 102 may include one or more actuators 250. The actuators 250may be any element or combination of elements operable to modify, adjustand/or alter one or more of the vehicle systems 240 or componentsthereof to responsive to receiving signals or other inputs from theprocessor(s) 210 and/or the autonomous driving module(s) 260. Anysuitable actuator may be used. For instance, the one or more actuators250 may include motors, pneumatic actuators, hydraulic pistons, relays,solenoids, and/or piezoelectric actuators, just to name a fewpossibilities.

It will be appreciated that arrangements described herein may providenumerous benefits, including one or more of the benefits mentionedherein. For example, arrangements described herein may result inreducing the risk of a vehicular collision. The arrangements describedherein may also result in traffic decongestion.

Detailed embodiments are disclosed herein. However, it is to beunderstood that the disclosed embodiments are intended only as examples.Therefore, specific structural and functional details disclosed hereinare not to be interpreted as limiting, but merely as a basis for theclaims and as a representative basis for teaching one skilled in the artto variously employ the aspects herein in virtually any appropriatelydetailed structure. Further, the terms and phrases used herein are notintended to be limiting but rather to provide an understandabledescription of possible implementations. Various embodiments are shownin FIGS. 1-7 , but the embodiments are not limited to the illustratedstructure or application.

The flowcharts and block diagrams in the figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments. In this regard, each block in the flowcharts or blockdiagrams may represent a module, segment, or portion of code, whichcomprises one or more executable instructions for implementing thespecified logical function(s). It should also be noted that, in somealternative implementations, the functions noted in the block may occurout of the order noted in the figures. For example, two blocks shown insuccession may, in fact, be executed substantially concurrently, or theblocks may sometimes be executed in the reverse order, depending uponthe functionality involved.

The systems, components and/or processes described above may be realizedin hardware or a combination of hardware and software and may berealized in a centralized fashion in one processing system or in adistributed fashion where different elements are spread across severalinterconnected processing systems. Any kind of processing system oranother apparatus adapted for carrying out the methods described hereinis suited. A typical combination of hardware and software may be aprocessing system with computer-usable program code that, when beingloaded and executed, controls the processing system such that it carriesout the methods described herein. The systems, components and/orprocesses also may be embedded in a computer-readable storage, such as acomputer program product or other data programs storage device, readableby a machine, tangibly embodying a program of instructions executable bythe machine to perform methods and processes described herein. Theseelements also may be embedded in an application product which comprisesall the features enabling the implementation of the methods describedherein and, which when loaded in a processing system, is able to carryout these methods.

Furthermore, arrangements described herein may take the form of acomputer program product embodied in one or more computer-readable mediahaving computer-readable program code embodied, e.g., stored, thereon.Any combination of one or more computer-readable media may be utilized.The computer-readable medium may be a computer-readable signal medium ora computer-readable storage medium. The phrase “computer-readablestorage medium” means a non-transitory storage medium. Acomputer-readable storage medium may be, for example, but not limitedto, an electronic, magnetic, optical, electromagnetic, infrared, orsemiconductor system, apparatus, or device, or any suitable combinationof the foregoing. More specific examples (a non-exhaustive list) of thecomputer-readable storage medium would include the following: a portablecomputer diskette, a hard disk drive (HDD), a solid-state drive (SSD), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a portable compact disc read-only memory (CD-ROM), adigital versatile disc (DVD), an optical storage device, a magneticstorage device, or any suitable combination of the foregoing. In thecontext of this document, a computer-readable storage medium may be anytangible medium that may contain, or store a program for use by or inconnection with an instruction execution system, apparatus, or device.

Generally, modules, as used herein, include routines, programs, objects,components, data structures, and so on that perform particular tasks orimplement particular data types. In further aspects, a memory generallystores the noted modules. The memory associated with a module may be abuffer or cache embedded within a processor, a RAM, a ROM, a flashmemory, or another suitable electronic storage medium. In still furtheraspects, a module as envisioned by the present disclosure is implementedas an application-specific integrated circuit (ASIC), a hardwarecomponent of a system on a chip (SoC), as a programmable logic array(PLA), or as another suitable hardware component that is embedded with adefined configuration set (e.g., instructions) for performing thedisclosed functions.

Program code embodied on a computer-readable medium may be transmittedusing any appropriate medium, including but not limited to wireless,wireline, optical fiber, cable, RF, etc., or any suitable combination ofthe foregoing. Computer program code for carrying out operations foraspects of the present arrangements may be written in any combination ofone or more programming languages, including an object-orientedprogramming language such as Java™ Smalltalk, C++ or the like andconventional procedural programming languages, such as the “C”programming language or similar programming languages. The program codemay execute entirely on the user's computer, partly on the user'scomputer, as a stand-alone software package, partly on the user'scomputer and partly on a remote computer, or entirely on the remotecomputer or server. In the latter scenario, the remote computer may beconnected to the user's computer through any type of network, includinga local area network (LAN) or a wide area network (WAN), or theconnection may be made to an external computer (for example, through theInternet using an Internet Service Provider).

The terms “a” and “an,” as used herein, are defined as one or more thanone. The term “plurality,” as used herein, is defined as two or morethan two. The term “another,” as used herein, is defined as at least asecond or more. The terms “including” and/or “having,” as used herein,are defined as comprising (i.e., open language). The phrase “at leastone of . . . and . . . ” as used herein refers to and encompasses anyand all possible combinations of one or more of the associated listeditems. As an example, the phrase “at least one of A, B, and C” includesA only, B only, C only, or any combination thereof (e.g., AB, AC, BC orABC).

Aspects herein can be embodied in other forms without departing from thespirit or essential attributes thereof. Accordingly, reference should bemade to the following claims, rather than to the foregoingspecification, as indicating the scope hereof.

What is claimed is:
 1. A system for generating, from outside a targetvehicle, a notification about a risk of the target vehicle toppling overdue to wind, the system comprising: one or more processors; and a memoryin communication with the one or more processors, the memory including:an environment characteristic determination module includinginstructions that when executed by the one or more processors cause theone or more processors to determine a wind force of the wind at alocation of the target vehicle; a vehicle characteristic determinationmodule including instructions that when executed by the one or moreprocessors cause the one or more processors to determine one or morecharacteristics of the target vehicle; a risk determination moduleincluding instructions that when executed by the one or more processorscause the one or more processors to: determine whether there is a riskof the target vehicle toppling over based on the wind force of the windand the one or more characteristics of the target vehicle; and determinean impact that the toppling of the target vehicle may have on one ormore surrounding vehicles; and a notification module includinginstructions that when executed by the one or more processors cause theone or more processors to generate a notification about the risk.
 2. Thesystem of claim 1, wherein the environment characteristic determinationmodule further includes instructions that when executed by the one ormore processors cause the one or more processors to determine a trafficlevel at the location of the target vehicle; and wherein the risk of thetarget vehicle toppling over is determined based on the traffic level,the wind force of the wind, and the one or more characteristics of thetarget vehicle.
 3. The system of claim 1, wherein the environmentcharacteristic determination module further includes instructions thatwhen executed by the one or more processors cause the one or moreprocessors to determine a road characteristic at the location; andwherein the risk of the target vehicle toppling over is determined basedon the road characteristic, the wind force of the wind, and the one ormore characteristics of the target vehicle.
 4. The system of claim 1,wherein the one or more characteristics of the target vehicle includeone or more of: a weight of the target vehicle, a dimension of thetarget vehicle, a center of gravity of the target vehicle, and a speedof the target vehicle.
 5. The system of claim 1, wherein the riskdetermination module further includes instructions that when executed bythe one or more processors cause the one or more processors to determinean impact of the target vehicle toppling over to an environment aroundthe target vehicle; and wherein the notification includes informationabout the impact of the target vehicle toppling over to an environmentaround the target vehicle.
 6. The system of claim 1, wherein the riskdetermination module further includes instructions that when executed bythe one or more processors cause the one or more processors to determinean impact of the target vehicle toppling over to an environment aroundthe target vehicle; and wherein the memory further includes: an impactavoidance module including instructions that when executed by the one ormore processors cause the one or more processors to determine analternate route for a second vehicle to travel so as to avoid the impactof the target vehicle toppling over to an environment around the targetvehicle.
 7. The system of claim 1, wherein the notification modulefurther includes instructions that when executed by the one or moreprocessors cause the one or more processors to send the notification toat least one of a second vehicle and a server.
 8. A method forgenerating, from outside a target vehicle, a notification about a riskof the target vehicle toppling over due to wind, comprising: determininga wind force of the wind at a location of the target vehicle;determining one or more characteristics of the target vehicle;determining whether there is a risk of the target vehicle toppling overbased on the wind force of the wind and the one or more characteristicsof the target vehicle; determining an impact that the toppling of thetarget vehicle may have on one or more surrounding vehicles; andgenerating a notification about the risk.
 9. The method of claim 8,further comprising: determining a traffic level at the location of thetarget vehicle; and wherein the risk of the target vehicle toppling overis determined based on the traffic level, the wind force of the wind,and the one or more characteristics of the target vehicle.
 10. Themethod of claim 8, further comprising: determining a road condition atthe location of the target vehicle; and wherein the risk of the targetvehicle toppling over is determined based on the road condition, thewind force of the wind, and the one or more characteristics of thetarget vehicle.
 11. The method of claim 8, wherein the one or morecharacteristics of the target vehicle include one or more of: a weightof the target vehicle, a dimension of the target vehicle, a center ofgravity of the target vehicle, and a speed of the target vehicle. 12.The method of claim 8, further comprising: determining an impact of thetarget vehicle toppling over to an environment around the targetvehicle; and wherein the notification includes information about theimpact of the target vehicle toppling over to an environment around thetarget vehicle.
 13. The method of claim 8, further comprising:determining an impact of the target vehicle toppling over to anenvironment around the target vehicle; and determining an alternateroute for a second vehicle to travel so as to avoid the impact of thetarget vehicle toppling over to an environment around the targetvehicle.
 14. The method of claim 8, further comprising: sending thenotification to at least one of a second vehicle and a server.
 15. Anon-transitory computer-readable medium for generating, from outside atarget vehicle, a notification about a risk of the target vehicletoppling over due to wind and including instructions that when executedby one or more processors cause the one or more processors to: determinea wind force of the wind at a location of the target vehicle; determineone or more characteristics of the target vehicle; determine whetherthere is a risk of the target vehicle toppling over based on the windforce of the wind and the one or more characteristics of the targetvehicle; determine an impact that the toppling of the target vehicle mayhave on one or more surrounding vehicles; and generate a notificationabout the risk.
 16. The non-transitory computer-readable medium of claim15, wherein the instructions further include instructions that whenexecuted by the one or more processors cause the one or more processorsto determine a traffic level at the location; and wherein the risk ofthe target vehicle toppling over is determined based on the trafficlevel at the location, the wind force of the wind, and the one or morecharacteristics of target vehicle.
 17. The non-transitorycomputer-readable medium of claim 15, wherein the instructions furtherinclude instructions that when executed by the one or more processorscause the one or more processors to determine a road characteristic atthe location; and wherein the risk of the target vehicle toppling overis determined based on the road characteristic at the location, the windforce of the wind, and the one or more characteristics of targetvehicle.
 18. The non-transitory computer-readable medium of claim 15,wherein the one or more characteristics of the target vehicle includeone or more of: a weight of the target vehicle, a dimension of thetarget vehicle, a center of gravity of the target vehicle, and a speedof the target vehicle.
 19. The non-transitory computer-readable mediumof claim 15, wherein the instructions further include instructions thatwhen executed by the one or more processors cause the one or moreprocessors to determine an impact of the target vehicle toppling over toan environment surrounding the target vehicle; and wherein thenotification includes information about the impact of the target vehicletoppling over to an environment surrounding the target vehicle.
 20. Thenon-transitory computer-readable medium of claim 15, wherein theinstructions further include instructions that when executed by the oneor more processors cause the one or more processors to: send thenotification to at least one of a second vehicle and a server.